package com.yang.test.service;



import com.yang.test.domain.VO.QuestionVO;
import com.yang.test.domain.VO.ResultVO;

import java.util.List;
import java.util.Map;

public interface MbtiService {
    /**
     * 获取测试题目
     * @param testType 测试类型
     * @return 题目列表
     */
    List<QuestionVO> getQuestions(String testType);
    
    /**
     * 处理用户提交的答案
     * @param answers 用户答案
     * @param testType 测试类型
     * @return 结果ID
     */
    String processAnswers(List<Integer> answers, String testType);
    
    /**
     * 获取测试结果
     * @param resultId 结果ID
     * @return 结果视图对象
     */
    ResultVO getResult(String resultId);
    
    /**
     * 计算MBTI维度得分
     * @param answers 用户答案
     * @param testType 测试类型
     * @return 维度得分映射
     */
    Map<String, Double> calculateScores(List<Integer> answers, String testType);
    
    /**
     * 根据得分确定MBTI类型
     * @param scores 维度得分
     * @return MBTI类型
     */
    String determineMbtiType(Map<String, Double> scores);
}